A performance monitor device is widely used for analyzing performance of a software program. The performance monitor device stores an event occurring in hardware during program execution to be used for performance analysis. However, it would not be reasonable to store all of the events occurring during the execution of the program from the viewpoint of the hardware cost. Therefore, the operator of the performance monitor device needs to select and set the events to be stored. Thus, an event not involved in performance analysis of a program is also stored depending on the setup event and the analysis time is increased.
In order to solve such problem, there is proposed a performance monitor device that enables the operator to select the event to be stored in transaction units of event groups occurring in a processing sequence for an instruction from a processor. For example, refer to JP-A-11-272519 (counterpart U.S. patent application is granted as U.S. Pat. No. 6,374,367 B1).
It is desirable that the performance monitor device should store an event having a large effect on evaluation of program performance. However, in the technique disclosed in JP-A-11-272519, although the event to be stored can be set in transaction units, an event not involved in evaluation of program performance is also stored depending on the transaction setting and the analysis time is increased.
During program execution, it is difficult to change the event to be stored in response to a behavior of the program.